import {showToast, throttle} from "../../utils/tool";

const videoPlay = {
    playTime:0,
    isPause:true,
}


Component({
    options:{
        styleIsolation: 'apply-shared'
    },
    properties: {
        src:{type:String,value:''}
    },
    data: {},
    pageLifetimes:{

    },
    lifetimes:{
        detached() {
            this.triggerEvent('exitPlay', {
                playTime: videoPlay.playTime
            })
        },
    },
    methods: {
        startPlay(e){   // 开始/继续播放
            console.log(videoPlay)
            if (videoPlay.isPause){ // 上次播放暂停
                videoPlay.playTime = 0  // 将播放时长设置为0
                videoPlay.isPause = false // 改为false
            }
            console.log("start",e)
        },
        pausePlay(e){   // 暂停
            // 修改播放暂停标记
            videoPlay.isPause = true
            // todo：将本次播放信息提交到后台

            console.log("pause",e)
            console.log("pause播放时长", videoPlay.playTime)

            this.triggerEvent('exitPlay', {
                playTime: videoPlay.playTime
            })
        },
        playTimeUpdate:throttle((e)=>{
            // 这个函数是每250ms调用一次，一秒钟会调用四次
            // 这里使用节流函数，改为一秒执行一次
            // 观看时长+1
            videoPlay.playTime++
        },1000),
        endPlay(e){    // 视频全部播完
            // 播放完成会同时调用暂停方法，不需要写这个
            console.log("end",e)
        },

        videoErrorCallback(e) {
            showToast(e.detail.errMsg, {
                icon:'error'
            })
        }
    }
});
